Computer software has typically been operable only on the specific computing platform for which the software was created. For example, software developed for use on the Linux® operating system is typically not operable on computers running the Microsoft Windows® operating system. Similarly, the data stored by the various programs may not be stored on systems run by different operating systems. Thus, in order to share programs and data among various incompatible platforms, the programs and data were first converted to be operable on all the desired platforms.
In the past, different data has been stored and maintained on various different computing platforms. For example, certain entities use systems based on Microsoft technology, such as, for example, Windows NT, Internet Information Services (“IIS”), and Component Object Model (“COM”). Other entities may use systems based on a UNIX platform, such as those developed by Sun Microsystems, using programs such as, for example, WebSphere Application Server (“WAS”) and programming languages such as JAVA. In certain situations, a single organization may use two or more different platforms. In other situations, one organization may wish to share data or programs with another organization which uses a different computing platform.
With the recent proliferation of the use of the Internet and the growth in connectivity between computers, it has become more desirable to share data and programs among various distributed locations. Of particular interest is the ability to access various pieces of information, even when the data and programs containing the information were created for incompatible platforms. In the past, tools were used to convert programs such that they are operable on other platforms. However, such tools tended to be cumbersome, expensive, and wasteful in the use of computing resources. Therefore, there is a need for an efficient tool that allows for the use of various programs and data across multiple platforms.